Gauss–Newton algorithm